//
//  main.m
//  06_HomeWork
//
//  Created by dllo on 16/7/11.
//  Copyright © 2016年 LST. All rights reserved.
//

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    
    /* NSDate
     
     计算当前时间和一个固定时间的差值,如果差值在60秒内,输出"刚刚",如果在60秒外3600秒内,输出"xx分钟前",如果3600秒外, 3600*24秒内,输出"xx小时前"
     将字符串@"2016年04月01日 01点20分18秒"转换为NSDate对象。
     将1468232420转成日期类型
     研究NSDateComponents
     */
    // 1
    // 固定时间
    NSDate *pastDate = [NSDate dateWithTimeIntervalSinceNow:-1];
    NSLog(@"%@", pastDate);
    // 当前时间
    NSDate *nowDate = [NSDate date];
    // 固定时间与当前时间的差值
    NSTimeInterval interval = [nowDate timeIntervalSinceDate:pastDate];
    NSLog(@"时间差为 %.2f 秒", interval);
    if (interval <= 60) {
        NSLog(@"刚刚");
    } else if(interval <= 3600) {
        NSLog(@"%.f分钟之前", interval / 60);
    } else if(interval <= 24*3600) {
        NSLog(@"%.f小时之前", interval / 3600);
    } else if(interval > 24*3600) {
        NSLog(@"%@", pastDate);
    }
    // 2
    /*
     NSASCIIStringEncoding = 1,
    NSNEXTSTEPStringEncoding = 2,
    NSJapaneseEUCStringEncoding = 3,
    NSUTF8StringEncoding = 4,
    NSISOLatin1StringEncoding = 5,
    NSSymbolStringEncoding = 6,
    NSNonLossyASCIIStringEncoding = 7,
    NSShiftJISStringEncoding = 8,           kCFStringEncodingDOSJapanese
    NSISOLatin2StringEncoding = 9,
    NSUnicodeStringEncoding = 10,
    NSWindowsCP1251StringEncoding = 11,
     */
//    NSString *str1 = @"2016年04月01日 01点20分18秒";
//    NSData *data = [str1 dataUsingEncoding: NSUTF8StringEncoding];
//    NSLog(@"data is:%@", data);
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"yyyy年mm月dd号 hh时mm分ss秒"];
    // 准备时间字符串
    NSString *dateString = @"2016年04月01号 01时20分18秒";
    // 使用时间格式对象借助时间字符串格式化时间对象
    NSDate *date1 = [formatter dateFromString:dateString];
    // 转过来的时间会被回归到零时区的时间
    NSLog(@"%@", date1);
    // 如果想得到北京时间需要手动加上8小时
    NSDate *date2 = [date1 dateByAddingTimeInterval:8*60*60];
    NSLog(@"%@", date2);
    // 3
    long long time=1468232420LL;
    NSDate *d = [[NSDate alloc]initWithTimeIntervalSince1970:time/1000.0];
    NSLog(@"%@-----", d);
   
    NSDateComponents * com = [[NSDateComponents alloc] init];
    
    
    return 0;
}



